Skip to content

fix(build): de-duplicate Cargo.lock capnp (closes #272) + refresh guix.scm version#273

Merged
hyperpolymath merged 4 commits into
mainfrom
claude/fix-capnp-lockfile
Jun 20, 2026
Merged

fix(build): de-duplicate Cargo.lock capnp (closes #272) + refresh guix.scm version#273
hyperpolymath merged 4 commits into
mainfrom
claude/fix-capnp-lockfile

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Two build-hygiene fixes; the first unblocks all build CI.

fix(build) — Cargo.lock duplicate capnp (closes #272)

The capnpc 0.25→0.26 bump (#267) left two byte-identical capnp 0.26.0 stanzas in Cargo.lock, which cargo rejects (package capnp is specified twice in the lockfile, exit 101) — reding every build job (MVP Smoke, Boot Gate, the whole T1/* live-prover matrix) on every PR since. Collapsed the duplicate; capnp 0.25.6 (required by capnpc) and the single 0.26.0 remain. Deterministic dedup of identical stanzas — the build CI here will confirm (the authoring sandbox has no registry cache to run cargo --locked locally).

chore(guix) — version refresh

guix.scm declared (version "1.5.0") while the workspace is 2.3.0 (Cargo.toml / STATE.a2ml). Bumped to match.

Nix — already clean (nothing to remove)

echidna has no flake.nix / flake.lock / *.nix — the 2026-05-18 estate ruling was already applied (STATE.a2ml: "flake.nix + flake.lock git rm'd"). Remaining nix mentions are intentional deprecation history (CLAUDE.md, STATE.a2ml, manifest comments), plus a harmless .gitattributes flake.lock line and echidna-playground CODEOWNERS entries for non-existent files — left as-is (template/sub-project managed). Say the word to purge those dead lines too.

Draft until reviewed.

https://claude.ai/code/session_01UAqDQaMwpUqWHUSZekGZWv


Generated by Claude Code

claude added 4 commits June 20, 2026 13:04
The capnpc 0.25->0.26 bump (#267) left two byte-identical
`[[package]] name = "capnp" version = "0.26.0"` stanzas, which cargo
rejects ("package `capnp` is specified twice in the lockfile", exit 101)
-- reding every build job (MVP Smoke, Boot Gate, the whole T1/* live-prover
matrix). Collapsed the duplicate; capnp 0.25.6 (required by capnpc) and the
single 0.26.0 remain.

Closes #272

https://claude.ai/code/session_01UAqDQaMwpUqWHUSZekGZWv
guix.scm declared (version "1.5.0") while the workspace is at 2.3.0
(Cargo.toml / STATE.a2ml). No Nix to remove: echidna has no
flake.nix/flake.lock (the 2026-05-18 estate ruling was already applied);
remaining nix mentions are intentional deprecation history.

https://claude.ai/code/session_01UAqDQaMwpUqWHUSZekGZWv
axum 0.8.9 (bumped on main) panics at router-build time on the old
`:param` path syntax ("Path segments must not start with `:`. For
capture groups, use `{capture}`"). This was masked by the Cargo.lock
build break (#272); fixing that surfaced the panic, reding Boot Gate +
MVP Smoke (server panics on startup -> /api/health fails).

Migrated every `:param` -> {param} route string:
- src/rust/server.rs: /api/session/{id}/{state,apply,tree} (+ startup help text)
- src/interfaces/rest/main.rs: /api/v1/provers/{kind};
  /api/v1/proofs/{id} (+ /tactics, /tactics/suggest, /export)

Routes compiled already; runtime string syntax only, so no handler
changes. Verified no `:param` route strings remain in src/.

Refs: #272

https://claude.ai/code/session_01UAqDQaMwpUqWHUSZekGZWv
The previous commit's `:id`->{id} route migration also rewrote the
println! help text, where `{id}` is read as a captured format arg ->
build break (E0425: cannot find value `id`). Escaped to `{{id}}` so it
prints a literal `{id}` matching the new route syntax. The `.route(...)`
string literals are unaffected (they are not format strings).

https://claude.ai/code/session_01UAqDQaMwpUqWHUSZekGZWv
@hyperpolymath hyperpolymath marked this pull request as ready for review June 20, 2026 13:32
@hyperpolymath hyperpolymath merged commit 402d303 into main Jun 20, 2026
45 checks passed
@hyperpolymath hyperpolymath deleted the claude/fix-capnp-lockfile branch June 20, 2026 13:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(build): Cargo.lock duplicate capnp entry breaks all build/prover CI (package capnp specified twice)

2 participants